草庐IT

javascript var语句和性能

全部标签

javascript - 为什么 javascript 生成器函数的 yield 语句返回 .next() 的参数?

我偶然发现了generatorfunctionsonMDN令我困惑的是以下示例:function*logGenerator(){console.log(yield);console.log(yield);console.log(yield);}vargen=logGenerator();//thefirstcallofnextexecutesfromthestartofthefunction//untilthefirstyieldstatementgen.next();gen.next('pretzel');//pretzelgen.next('california');//calif

javascript - C# Regex 性能纯相对 JS

我对JS中正则表达式的速度有很好的体验。我决定做一个小小的比较。我运行了以下代码:varstr="Aregularexpressionisapatternthattheregularexpressionengineattemptstomatchininputtext.";varre=newRegExp("t","g");console.time();for(vari=0;i结果:3888.731ms。现在在C#中:varstopwatch=newStopwatch();varstr="Aregularexpressionisapatternthattheregularexpressio

javascript - chai-as-promised:单个测试中的多个 expect 语句

我正在使用chai-as-promised测试一些promise。我的问题是我不确定如何在单个测试中有多个expect语句。为了让expect().to.be.fulfilled正常工作,我需要返回它,如下所示:it('test',()=>{returnexpect(promise).to.be.fulfilled}...或者使用notify,像这样:it('test',(done)=>{expect(promise).to.be.fulfilled.notify(done)}当我有另一件事需要检查时,例如某个函数被调用时,问题就来了,如下所示:it('test',(done)=>{v

javascript - Karma 未运行在 karma-webpack 中具有 "import"语句的测试

我有一些测试文件,其中包含我想针对我的应用运行的测试。我正在尝试使用karma、karma-webpack、karma-babel-preprocessor、karma-chrome-launcher和jasmine在我的测试中。我的应用程序依赖于很多东西,包括backbone、marionette等。我的应用程序是使用webpack构建的,我正在尝试使用>webpack将我的文件捆绑在一起进行测试。(我最初想看看我是否可以跳过这一步,即简单地import一个要测试的文件,但似乎这是不可能的。)我的测试脚本看起来像package.json(脚本部分)"test":"./node_mod

javascript - 如何以更好的性能替换字符串中的大量单词?

最近,我写了一些代码来过滤字符串中的坏词。并且将过滤大量单词。我的代码有效,但性能不如预期。以下代码只是演示:方法一:letlist=["omg","bbq","wth","hello","world"];letsmallString="wthhello123456worldomg789bbqomgomg";for(leti=0;i方法二:letlist=["omg","bbq","wth","hello","world"];letsmallString="wthhello123456worldomg789bbqomgomg";for(leti=0;i我还用jsperf进行了性能测试,

javascript - Firebase 函数不记录 "console.log()"语句

我一直在为下面的函数而苦苦挣扎,它的console.log()语句没有出现在Firebase日志中。如果我删除所有以db.collection调用开头的内容,顶部的console.log()语句就会显示出来,但是一旦我添加了db.collection调用,没有console.log()语句出现在Firebase的日志中。我对JavaScript不是很熟悉(我通常使用Python进行后端编程),所以这可能是Promises工作方式的问题。我现在正在研究这个。知道发生了什么吗?exports.purchaseItem=functions.https.onCall((data,context

javascript - 将大型元素/数据集附加到 dom 的性能

我一次附加大量表格行元素,遇到了一些主要瓶颈。目前我正在使用jQuery,但如果它能完成工作,我愿意接受基于javascript的解决方案。我需要在给定时间追加0-100表行的任何地方(实际上可能更多,但我会对超过100行的任何内容进行分页)。现在我将每个表行单独附加到dom...loop{..buildhtmlstr...$("#myTable").append(row);}然后我将它们全部淡入淡出$("#myTabletr").fadeIn();这里有几件事需要考虑...1)我将数据绑定(bind)到每个单独的表行,这就是为什么我首先从批量追加切换到追加单独的行。2)我真的很喜欢淡

javascript - jQuery 滚动事件 - 检测元素滚动到 View 中 - 在 Chrome 上性能不佳

以下代码在IE和Firefox上工作正常,但Chrome讨厌它(它运行但真的很慢)。我确信它可以使浏览器更加友好,但是怎么做呢?itemPlaceholder是数百个100x100的floatdiv(例如图像占位符)。我正在使用jquery1.4.4和Chromev10.0.648.127。$(function(){ReplaceVisible();$(this).scroll(function(){ReplaceVisible();});});functionReplaceVisible(){$('.itemPlaceholder').each(function(index){if(

javascript - 使用 node.js async forEachSeries 时是否有与 'continue' 等效的语句?

我正在使用node.js异步包,特别是forEachSeries,根据从数组中提取的参数发出一系列http请求。在每个请求的回调中,我有一些if/else语句来响应不同类型的响应。//ThisisthecallbackofaGETrequestinsideofaforEachSeriesfunction(error,response){if(response.results){//Dosomethingwithresults}elseif(!response.results){//Wouldliketouseacontinuestatementhere,but//thisisnotin

javascript - 删除未使用的 DOM 元素以提高性能

我正在编写单页应用程序。最初提供页面时,它包含许多DOM元素,这些元素包含我注入(inject)到页面中的json字符串。当页面加载到客户端时,首先发生的事情是这些DOM元素从json解析为javascript对象,然后它们再也不会被使用。从DOM中删除它们并减小其大小是否会带来性能优势?关于这方面,我还没有找到任何确凿的数据。有关信息,这些元素的大小约为500K。感谢您的建议。 最佳答案 WouldtherebeaperformancebenefitintodeletingthemfromtheDOMandreducingitss